package com.atguigu.springbootdemo.controller;

import org.springframework.web.bind.annotation.*;

/**
 * Created by Smexy on 2022/12/5
 *
 *  如果控制器都是返回数据接口，可以直接声明为RestController
 *
 *  @RestController作用;  @Controller + 为这个类的所有方法，都默认添加 @ResponseBody
 */
@RestController
public class Hello2Controller
{

    @RequestMapping(value = "/hello4")
    public Object handle3(){

        System.out.println("收到了请求...");

        return "/a.html";

    }

    /*
            如何限制客户端的请求方式

            在Http协议中，定义了9种请求方式。

            @RequestMapping： 不限制请求方式。
                @PostMapping； 请求方式必须是post
                 @GetMapping:  请求方式必须是get
     */
    //@PostMapping(value = "/hello5")
    @GetMapping(value = "/hello5")
    public Object handle4(){

        System.out.println("收到了请求...");

        return "/a.html";

    }

    /*
            如何接受路径上的参数

            请求参数:
                    url?a=1&b=2
                        a,b: 成为请求参数

            路径上的参数:  获取url上某层路径
                    /a/b/c
                        希望获取b
     */
    @GetMapping(value = "/hello6/{a}/{b}/c")
    public Object handle5(@PathVariable("a") String c ,@PathVariable("b") String d){

        System.out.println("收到了请求...a:"+c +",b:"+d);

        return "/a.html";

    }
}
